package com.exject.android.socialphonebook.data;

import java.util.ArrayList;
import java.util.List;

public class Contact {
	private long id;
	private String name;
	private String photo;
	private boolean favourite;

	private List<PhoneNumber> phoneNumbers;
	private List<EMailAddress> eMailAddresses;
	private List<ChatAddress> chatAddresses;
	private List<Address> addresses;
	private List<Organization> organizations;
	private List<Note> notes;
	
	public void addPhoneNumber(PhoneNumber phoneNumber) {
		if(this.phoneNumbers == null) {
			this.phoneNumbers = new ArrayList<PhoneNumber>();
		}
		this.phoneNumbers.add(phoneNumber);
	}
	
	public void addEMailAddress(EMailAddress eMailAddress) {
		if(this.eMailAddresses == null) {
			this.eMailAddresses = new ArrayList<EMailAddress>();
		}
		this.eMailAddresses.add(eMailAddress);
	}
	
	public void addChatAddress(ChatAddress chatAddress) {
		if(this.chatAddresses == null) {
			this.chatAddresses = new ArrayList<ChatAddress>();
		}
		this.chatAddresses.add(chatAddress);
	}
	
	public void addAddress(Address address) {
		if(this.addresses == null) {
			this.addresses = new ArrayList<Address>();
		}
		this.addresses.add(address);
	}
	
	public void addOrganization(Organization organization) {
		if(this.organizations == null) {
			this.organizations = new ArrayList<Organization>();
		}
		this.organizations.add(organization);
	}
	
	public void addNote(Note note) {
		if(this.notes == null) {
			this.notes = new ArrayList<Note>();
		}
		this.notes.add(note);
	}

	public List<Address> getAddresses() {
		return this.addresses;
	}

	public List<ChatAddress> getChatAddresses() {
		return this.chatAddresses;
	}

	public List<EMailAddress> getEMailAddresses() {
		return this.eMailAddresses;
	}

	public long getId() {
		return this.id;
	}

	public String getName() {
		return this.name;
	}

	public List<Note> getNotes() {
		return this.notes;
	}

	public List<Organization> getOrganizations() {
		return this.organizations;
	}

	public List<PhoneNumber> getPhoneNumbers() {
		return this.phoneNumbers;
	}

	public String getPhoto() {
		return this.photo;
	}

	public boolean isFavourite() {
		return this.favourite;
	}

	public void setAddresses(final List<Address> addresses) {
		this.addresses = addresses;
	}

	public void setChatAddresses(final List<ChatAddress> chatAddresses) {
		this.chatAddresses = chatAddresses;
	}

	public void setEMailAddresses(final List<EMailAddress> eMailAddresses) {
		this.eMailAddresses = eMailAddresses;
	}

	public void setFavourite(final boolean favourite) {
		this.favourite = favourite;
	}

	public void setId(final long id) {
		this.id = id;
	}

	public void setName(final String name) {
		this.name = name;
	}

	public void setNotes(final List<Note> notes) {
		this.notes = notes;
	}

	public void setOrganizations(final List<Organization> organizations) {
		this.organizations = organizations;
	}

	public void setPhoneNumbers(final List<PhoneNumber> phoneNumbers) {
		this.phoneNumbers = phoneNumbers;
	}

	public void setPhoto(final String photo) {
		this.photo = photo;
	}
}
